import NProgress from 'nprogress'
import 'nprogress/nprogress.css'
import { getToken } from '@/utils/store.js'

NProgress.configure({ showSpinner: false })

/**
 * 子应用路由全局卫士，其中要区分本地开发环境及线上环境（测试环境，生产环境）
 * 线上环境（如果单独打开子应用url，判断是否存在tokenInfo，来屏蔽子应用单独打开）
 * @param {Object} router 路由实例
 */

export function guardHandler(router) {
  router.beforeEach((to, from, next) => {
    NProgress.start()
    if (process.env.NODE_ENV === 'development') {
      //本地开发环境跳过token检查
      next()
    } else {
      if (getToken()) {
        console.log('sub', getToken())
        next()
      } else {
        window.location.href = process.env.VUE_APP_MAIN_APP_URL
      }
    }
  })

  router.afterEach(() => {
    // finish progress bar
    NProgress.done()
  })
}
